Я прохожу курс на Lynda.com (Ruby on Rails 5 Essential Training), и у меня возникла проблема с добавлением записи в таблицу. Вот некоторые подробности: Цель состоит в том, чтобы создать объединенную таблицу, ассоциацию «многие ко многим», поэтому мы сначала пытаемся создать запись для таблиц, которые мы хотим использовать в новой таблице. И каждый раз, когда я пишу эту строку:
section = Sections.create(:name => "Section One", :position => 1)
Это дает мне это
(0.2ms) BEGIN
(0.3ms) ROLLBACK
=> #<Section id: nil, page_id: nil, name: "Section One", position: 1, visible: false, content_type: nil, content: nil, created_at: nil, updated_at: nil>
Я проверил свой код, и все, кажется, хорошо. Кстати вставка записей на другие таблицы работает. Это просто этот стол.
один важный момент, эта таблица является ранее созданной таблицей. Это новый, который мы пытаемся создать.
Что я делаю не так?
Вот мой код из миграции:
class CreateSections < ActiveRecord::Migration[5.2]
def up
create_table :sections do |t|
t.integer "page_id"
t.string "name"
t.integer "position"
t.boolean "visible", :default => false
t.string "content_type"
t.text "content"
t.timestamps
end
add_index("sections", "page_id")
end
def down
drop_table :sections
end
end
Вот модель сечения:
class Section < ApplicationRecord
belongs_to :page
has_many :section_edits
end